/*
 * EYEditor.h
 *
 *  Created on: 31-gen-2009
 *      Author: fabrizio
 */

#ifndef EYEDITOR_H_
#define EYEDITOR_H_

#include <irrlicht.h>
using namespace irr;
using namespace core;
using namespace scene;
using namespace video;
using namespace io;
using namespace gui;

#include "scenemngr.h"

struct Project
{
  stringw Title;
  stringw Project;
  int StartNode;
  dimension2d<u32> Resolution;
  bool Fullscreen;
  bool SpecialFX;
};

struct GUIProject
{
  IGUIWindow *Window;
  IGUIEditBox *Title;
  IGUIEditBox *Project;
  IGUIComboBox *StartNode;
  IGUIComboBox *Resolution;
  IGUICheckBox *Fullscreen;
  IGUICheckBox *SpecialFX;
};

class EYEditor : public IEventReceiver
{
public:
  EYEditor(SceneMngr *smgr);
  SceneMngr *Smgr;
  IrrlichtDevice* Device;
  SceneMngr* SceneMgr;
  IGUIEnvironment* GUI;
  IGUIContextMenu *Menu;
  IGUIToolBar *Toolbar;

  Project SProject;
  GUIProject GProject;

  bool loadProjectAttr();
  void showObjects();
  void projectDlg();

  virtual bool OnEvent(const SEvent& event);

  virtual
  ~EYEditor();
};

#endif /* EYEDITOR_H_ */
